package com.adisi.objetos;

import com.google.gson.Gson;


public class Domicilio {


	public String calle = "";
	public String altura = "";
	public String piso = "";
	public String departamento = "";
	public String localidad = "";
	public String partido = "";
	public String provincia = "";
	
	public double latitud = 0;
	public double longitud = 0;
	
	public Domicilio() {
		super();
	}
	
	
	/**
	 * Convierte un String generado por el metodo ToString() en una direccion.
	 * 
	 * @param string
	 */
	public Domicilio(String string) {
		super();
		
		Gson gson = new Gson();
		Domicilio dom = gson.fromJson(string, Domicilio.class);
		
		this.calle = dom.calle;
		this.altura = dom.altura;
		this.piso = dom.piso;
		this.departamento = dom.departamento;
		this.localidad = dom.localidad;
		this.provincia = dom.provincia ;
		
	}	

	/**
	 * Convierte un String generado por el metodo ToString() en una direccion.
	 * 
	 * @param string
	 */
	public Domicilio(String calle, String altura, String piso, String departamento, String localidad, String provincia) {
		super();
		
		this.calle = calle;
		this.altura = altura;
		this.piso = piso;
		this.departamento = departamento;
		this.localidad = localidad;
		this.provincia = provincia ;
		
	}	
	
	/**
	 * 
	 * Genera un String con las partes del domicilio separadas por una barra vertical.
	 * 
	 */
	public String toString(){
		
		Gson gson = new Gson();
		
		return gson.toJson(this);
		
		
	}

	/**
	 * 
	 * Genera un String con las partes del domicilio separadas por una barra vertical.
	 * 
	 */
	public String toString(boolean formateado){
		
		if(formateado==false)
				return toString();
		else {
		
			StringBuilder sb = new StringBuilder(calle);
			sb.append(' ');
			
			sb.append(altura);
			sb.append(' ');
	
			sb.append(piso);
			sb.append(' ');
	
			sb.append(departamento);
			sb.append(" - ");
			
			sb.append(localidad);
			
			return sb.toString();
		}
		
	}	
	
	
	
}
